package com.taijihuabao.modules.service;

import com.taijihuabao.modules.entity.RaiseSalaryEntity;
import org.activiti.engine.delegate.DelegateExecution;

import java.util.List;

public interface RaiseSalaryService {
    /**
     * 部署流程定义
     */
    void deploy();

    /**
     * 修改审批状态
     * @param execution
     * @param raiseSalaryState
     */
    void changeStatus(DelegateExecution execution, String raiseSalaryState);

    /**
     * 启动流程
     * @param raiseSalaryEntity
     */
    void startProcess(RaiseSalaryEntity raiseSalaryEntity);

    /**
     * 查询待办
     * @param userId
     * @return
     */
    List<RaiseSalaryEntity> findTaskByUserId(String userId);

    /**
     * 审核待办
     * @param userId 审核人
     * @param raiseSalaryEntity
     * taskId 审核任务
     * agree  审核结果
     */
    void approvalTask(String userId, RaiseSalaryEntity raiseSalaryEntity);
}
